import tensorflow as tf
import numpy as np

#创建数据
x = np.random.rand(200).astype(np.float32)
y_data = x * 0.1 + 0.3 # y = weights * x + biases

#搭建模型
weights = tf.Variable(tf.random_uniform([1],-1.0,1.0))
biases = tf.Variable(tf.zeros([1]))

y = weights * x + biases  #神经网络经典传递


#计算误差,均方差公式
loss = tf.reduce_mean(tf.square(y - y_data))

#误差传递
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)

#训练
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)

for step in range(401):
    sess.run(train)
    if step % 20 == 0:
        print(step,sess.run(weights),sess.run(biases))
